package pck_gui;

//import java.sql.Connection;
//import java.sql.ResultSet;
//import java.sql.Statement;
import javax.swing.JInternalFrame;
import javax.swing.JOptionPane;
import pck_pojos.Cls_Profesion;
import pck_pojos.Cls_Trabajador;
import pck_utilitarios.Cls_Funciones;
import pck_utilitarios.Cls_InvocaWebService;
import pck_utilitarios.Cls_Parametros;
import pck_utilitarios.JP_Modelo;
import pck_utilitarios.Utiles_Panel;
import udprrhh.UDPRRHHView;

/**
 * @author supermiguelon
 */
public class JP_Asignar_Profesion_Trabajador extends JP_Modelo {
    private String codigo ;
    /** Creates new form JP_Asignar_Profesion_Trabajador */
    public JP_Asignar_Profesion_Trabajador() {
        initComponents();
        BTN_cancelar.setEnabled(false);
        BTN_buscarProfesion.setEnabled(false);
    }
    public void limpiar(){
        TXT_Dni.setText("");
        TXT_Nombres.setText("");
        TXT_Cargo.setText("");
        TXT_Unidad_Organica.setText("");
        TXT_Profesion.setText("");
        BTN_Actualizar.setEnabled(false);
        BTN_cancelar.setEnabled(false);
        BTN_buscarProfesion.setEnabled(false);
        this.codigo = null;
    }
    public void obtenerProfesion(Cls_Profesion profesion){
        this.codigo = profesion.getCodigo();
//        String cadena = "select cod_profesion,descripcion,abreviatura from profesion ";
//        cadena = cadena + "where cod_profesion = '"+codigo+"'";
//        try{
//            Connection cn = Cls_Conexion.obtenerConexion();
//            Statement st = cn.createStatement();
//            ResultSet rs = st.executeQuery(cadena);
//            while(rs.next()){
//                TXT_Profesion.setText(rs.getString("descripcion"));
//            }
//            cn.close();
//            st.close();
//            rs.close();
//        }catch(Exception e){
//            System.out.println(e.getMessage());
//        }
        TXT_Profesion.setText(profesion.getAbreviatura());
        BTN_Actualizar.setEnabled(true);
    }
    public void obtenerDatosTrabajador(String dni){
//        String cadena = "";
//        cadena = "SELECT     trabajador.DNI, Persona.Ap_paterno + ' ' + Persona.Ap_materno + ' ' + Persona.Nombre AS nombres, ";
//        cadena = cadena + "dbo.f_getCargo(trabajador.DNI) AS cargo,Unidad_Organizativa.Unidad_Organizativa, profesion.descripcion ";
//        cadena = cadena + "FROM trabajador INNER JOIN Persona ON trabajador.DNI = Persona.codigo_persona INNER JOIN ";
//        cadena = cadena + "Unidad_Organizativa ON trabajador.cod_Uni_Organizativa = Unidad_Organizativa.cod_Uni_Organizativa LEFT OUTER JOIN ";
//        cadena = cadena + "profesion ON trabajador.cod_profesion = profesion.cod_profesion ";
//        cadena = cadena + "WHERE  trabajador.DNI='"+dni+"' AND (trabajador.cod_estado <> '05')";
//        try{
//            Connection cn = Cls_Conexion.obtenerConexion();
//            Statement st = cn.createStatement();
//            ResultSet rs = st.executeQuery(cadena);
//            while(rs.next()){
//                TXT_Dni.setText(rs.getString("DNI"));
//                TXT_Nombres.setText(rs.getString("nombres"));
//                TXT_Cargo.setText(rs.getString("cargo"));
//                TXT_Unidad_Organica.setText(rs.getString("Unidad_Organizativa"));
//                TXT_Profesion.setText(rs.getString("descripcion"));
//            }
//            cn.close();
//            st.close();
//            rs.close();
//        }catch(Exception e){
//            System.out.println(e.getMessage());
//        }
        this.codigo = null;
        String parametrosParaService_01[]={Cls_Parametros.Map_DNI,dni};
        Cls_Trabajador trabajador=Cls_InvocaWebService.obtenerDatosTrabajador(Cls_Funciones.generarHashMapParaSolicitud(parametrosParaService_01));
        TXT_Dni.setText(trabajador.getCodigo());
        TXT_Nombres.setText(trabajador.getNombres());
        TXT_Cargo.setText(trabajador.getCargo());
        TXT_Unidad_Organica.setText(trabajador.getArea());
        TXT_Profesion.setText(trabajador.getProfesion());
        BTN_cancelar.setEnabled(true);
        BTN_buscarProfesion.setEnabled(true);
    }
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jPanel1 = new javax.swing.JPanel();
        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        TXT_Nombres = new javax.swing.JTextField();
        TXT_Cargo = new javax.swing.JTextField();
        TXT_Unidad_Organica = new javax.swing.JTextField();
        jButton1 = new javax.swing.JButton();
        jLabel4 = new javax.swing.JLabel();
        TXT_Profesion = new javax.swing.JTextField();
        BTN_buscarProfesion = new javax.swing.JButton();
        jPanel2 = new javax.swing.JPanel();
        BTN_Actualizar = new javax.swing.JButton();
        BTN_cancelar = new javax.swing.JButton();
        jLabel5 = new javax.swing.JLabel();
        TXT_Dni = new javax.swing.JTextField();

        setName("Form"); // NOI18N

        org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance().getContext().getResourceMap(JP_Asignar_Profesion_Trabajador.class);
        jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(resourceMap.getString("jPanel1.border.title"))); // NOI18N
        jPanel1.setName("jPanel1"); // NOI18N
        jPanel1.setLayout(null);

        jLabel1.setText(resourceMap.getString("jLabel1.text")); // NOI18N
        jLabel1.setName("jLabel1"); // NOI18N
        jPanel1.add(jLabel1);
        jLabel1.setBounds(20, 60, 70, 14);

        jLabel2.setText(resourceMap.getString("jLabel2.text")); // NOI18N
        jLabel2.setName("jLabel2"); // NOI18N
        jPanel1.add(jLabel2);
        jLabel2.setBounds(20, 100, 40, 14);

        jLabel3.setText(resourceMap.getString("jLabel3.text")); // NOI18N
        jLabel3.setName("jLabel3"); // NOI18N
        jPanel1.add(jLabel3);
        jLabel3.setBounds(20, 130, 90, 14);

        TXT_Nombres.setEditable(false);
        TXT_Nombres.setText(resourceMap.getString("TXT_Nombres.text")); // NOI18N
        TXT_Nombres.setName("TXT_Nombres"); // NOI18N
        jPanel1.add(TXT_Nombres);
        TXT_Nombres.setBounds(110, 60, 330, 20);

        TXT_Cargo.setEditable(false);
        TXT_Cargo.setText(resourceMap.getString("TXT_Cargo.text")); // NOI18N
        TXT_Cargo.setName("TXT_Cargo"); // NOI18N
        jPanel1.add(TXT_Cargo);
        TXT_Cargo.setBounds(110, 90, 330, 20);

        TXT_Unidad_Organica.setEditable(false);
        TXT_Unidad_Organica.setText(resourceMap.getString("TXT_Unidad_Organica.text")); // NOI18N
        TXT_Unidad_Organica.setName("TXT_Unidad_Organica"); // NOI18N
        jPanel1.add(TXT_Unidad_Organica);
        TXT_Unidad_Organica.setBounds(110, 120, 330, 20);

        jButton1.setText(resourceMap.getString("jButton1.text")); // NOI18N
        jButton1.setName("jButton1"); // NOI18N
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });
        jPanel1.add(jButton1);
        jButton1.setBounds(240, 30, 170, 23);

        jLabel4.setText(resourceMap.getString("jLabel4.text")); // NOI18N
        jLabel4.setName("jLabel4"); // NOI18N
        jPanel1.add(jLabel4);
        jLabel4.setBounds(20, 160, 60, 14);

        TXT_Profesion.setEditable(false);
        TXT_Profesion.setText(resourceMap.getString("TXT_Profesion.text")); // NOI18N
        TXT_Profesion.setName("TXT_Profesion"); // NOI18N
        jPanel1.add(TXT_Profesion);
        TXT_Profesion.setBounds(110, 150, 220, 20);

        BTN_buscarProfesion.setText(resourceMap.getString("BTN_buscarProfesion.text")); // NOI18N
        BTN_buscarProfesion.setName("BTN_buscarProfesion"); // NOI18N
        BTN_buscarProfesion.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                BTN_buscarProfesionActionPerformed(evt);
            }
        });
        jPanel1.add(BTN_buscarProfesion);
        BTN_buscarProfesion.setBounds(340, 150, 113, 23);

        jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(resourceMap.getString("jPanel2.border.title"))); // NOI18N
        jPanel2.setName("jPanel2"); // NOI18N
        jPanel2.setLayout(null);

        BTN_Actualizar.setText(resourceMap.getString("BTN_Actualizar.text")); // NOI18N
        BTN_Actualizar.setEnabled(false);
        BTN_Actualizar.setName("BTN_Actualizar"); // NOI18N
        BTN_Actualizar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                BTN_ActualizarActionPerformed(evt);
            }
        });
        jPanel2.add(BTN_Actualizar);
        BTN_Actualizar.setBounds(30, 20, 90, 23);

        BTN_cancelar.setText(resourceMap.getString("BTN_cancelar.text")); // NOI18N
        BTN_cancelar.setName("BTN_cancelar"); // NOI18N
        BTN_cancelar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                BTN_cancelarActionPerformed(evt);
            }
        });
        jPanel2.add(BTN_cancelar);
        BTN_cancelar.setBounds(150, 20, 110, 23);

        jPanel1.add(jPanel2);
        jPanel2.setBounds(80, 190, 290, 60);

        jLabel5.setText(resourceMap.getString("jLabel5.text")); // NOI18N
        jLabel5.setName("jLabel5"); // NOI18N
        jPanel1.add(jLabel5);
        jLabel5.setBounds(20, 30, 60, 14);

        TXT_Dni.setEditable(false);
        TXT_Dni.setText(resourceMap.getString("TXT_Dni.text")); // NOI18N
        TXT_Dni.setName("TXT_Dni"); // NOI18N
        jPanel1.add(TXT_Dni);
        TXT_Dni.setBounds(110, 30, 110, 20);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 463, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 257, Short.MAX_VALUE)
        );
    }// </editor-fold>//GEN-END:initComponents

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
        JInternalFrame jif_trabajador_Buscar;
        JP_Trabajador_Buscar panel =  new JP_Trabajador_Buscar();
        jif_trabajador_Buscar = Utiles_Panel.creaVentanaInternaModal((UDPRRHHView)this.getRef(), panel, "Busca de Trabajadores");
        panel.setPadre(Utiles_Panel.TIPO_JINTERNALFRAME, jif_trabajador_Buscar);
        panel.setRefDep(this);
    }//GEN-LAST:event_jButton1ActionPerformed

    private void BTN_buscarProfesionActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_BTN_buscarProfesionActionPerformed
        JInternalFrame jif_Profesiones_Buscar;
        JP_Profesiones_Buscar panel =  new JP_Profesiones_Buscar();
        jif_Profesiones_Buscar = Utiles_Panel.creaVentanaInternaModal((UDPRRHHView)this.getRef(), panel, "Busca de Especialidades");
        panel.setPadre(Utiles_Panel.TIPO_JINTERNALFRAME, jif_Profesiones_Buscar);
        panel.setRefDep(this);
    }//GEN-LAST:event_BTN_buscarProfesionActionPerformed

    private void BTN_ActualizarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_BTN_ActualizarActionPerformed
//        String cadena = "update trabajador set cod_profesion = '"+codigo+"' where trabajador.DNI ='"+TXT_Dni.getText()+"'";
//        try{
//            Connection cn = Cls_Conexion.obtenerConexion();
//            Statement st = cn.createStatement();
//            if( st.executeUpdate(cadena)==1){
//                JOptionPane.showMessageDialog(this, "Operación Satisfactoria");
//            }else{
//                JOptionPane.showMessageDialog(this, "Error en Operación");
//            }
//        }catch(Exception s){
//
//        }
        String parametrosParaService_01[]={Cls_Parametros.Map_DNI,TXT_Dni.getText()};
        String parametrosParaService_02[]={Cls_Parametros.Map_CODIGO_PROFESION,codigo};
        JOptionPane.showMessageDialog(this,Cls_InvocaWebService.asignarProfesionTrabajador(Cls_Funciones.
                generarHashMapParaSolicitud(parametrosParaService_01,parametrosParaService_02)));
        limpiar();
    }//GEN-LAST:event_BTN_ActualizarActionPerformed

    private void BTN_cancelarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_BTN_cancelarActionPerformed
        limpiar();
    }//GEN-LAST:event_BTN_cancelarActionPerformed


    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton BTN_Actualizar;
    private javax.swing.JButton BTN_buscarProfesion;
    private javax.swing.JButton BTN_cancelar;
    private javax.swing.JTextField TXT_Cargo;
    private javax.swing.JTextField TXT_Dni;
    private javax.swing.JTextField TXT_Nombres;
    private javax.swing.JTextField TXT_Profesion;
    private javax.swing.JTextField TXT_Unidad_Organica;
    private javax.swing.JButton jButton1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel2;
    // End of variables declaration//GEN-END:variables

}
